#define _CRT_SECURE_NO_WARNINGS

//#include<stdio.h>
//int main()
//{
//	int x = 10, y = 5, z;
//	printf("%d\n", z = (x += y, x / y));逗号表达式
//	return 0;
//}//3

//int main()
//{
//	int x = 30, y = 50, z = 80;
//	if (x > y || x<z && y>z)
//		z = x; //if为0不执行
//	x = y;
//	y = z;
//	printf("%d %d %d\n", x, y, z);
//}

//周期串如abcabcabcabc周期为3 6 12也可以是
//输入一个长度不超过80的字符串，输出其最小周期
#include <stdio.h>
#include <string.h>

int main()
{
    int i = 0;
    int j = 0;
    int flag = 0;
    char arr[80] = { 0 };
    //scanf("%s", arr);
    gets(arr);
    int n = strlen(arr);

    for (i = 1; i <= n; i++) // i 从1开始
    {
        if (n % i == 0)
        {
            flag = 1;
            for (j = 0; j < n; j++)
            {
                if (arr[j] != arr[j % i])
                {
                    flag = 0;
                    break;
                }
            }
            if (flag == 1) // 如果找到一个满足条件的周期，跳出循环
            {
                break;
            }
        }
    }
    printf("%d\n", i);
    return 0;
}